//
//  ZNWBStatus.swift
//  ZNWeibo
//
//  Created by FunctionMaker on 2017/8/4.
//  Copyright © 2017年 FunctionMaker. All rights reserved.
//

import UIKit
import YYModel

class ZNWBStatus: NSObject {

    //Int：32bit机器默认为32位，64bit机器默认为64位。id可能在32bit上溢出
    var id: Int64 = 0
    
    /// 微博创建时间
    var created_at: String?
    /// 微博来源, 使用胖Model设置来源，节省开销
    var source: String? {
        didSet {
            if let value = source?.zn_getHrefAndTitle()?.source {
                source = "来自 " + value
            } else {
                source = ""
            }
        }
    }
    
    //微博信息内容
    var text: String?

    /// 转发数
    var reposts_count: Int = 0
    /// 评论数
    var comments_count: Int = 0
    /// 点赞数
    var attitudes_count	: Int = 0
    
    /// 微博配图模型数组
    var pic_urls: [ZNWBStatusPicture]?
    
    /// 被转发的原唱微博
    var retweeted_status: ZNWBStatus?
    
    
    /// 微博的用户
    var user: ZNWBUser?
    
    override var description: String {
        return yy_modelDescription()
    }
    
    /// 告诉YYModel，遇到数组类型的属性，数组中存放的对象的类型。NSArray中的对象类型是id，泛型是在Swift推出后为兼容Swift推出。只是告诉编译器类型方便一些属性与方法的访问，实际在运行时依旧是id类型。
    ///
    /// - Returns: 属性与其类的键值对映射
    class func modelContainerPropertyGenericClass() -> [String: AnyClass] {
        return ["pic_urls": ZNWBStatusPicture.self]
    }
}
